import axios from 'axios'

import {Message} from 'element-ui';
import router from '../router'

// 解决跨域
const baseURL= window.location.origin + "/api";
// const baseURL= 'http://61.171.30.158:9000';//线上

// 创建axios的实例
const $http = axios.create({
	baseURL: baseURL,
	timeout: 50000,
	headers: {
		// 'Content-Type': 'application/x-www-form-urlencoded'
		'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
	}
});



// 添加请求拦截器
$http.interceptors.request.use(config => {
	// 在发送请求之前做些什么
	// 获取token并设置
	let token = localStorage.getItem('token')
	if (!token) {
		token = ''
	}
	config.headers.token = token
	return config
}, error => {
	// 对请求错误做些什么
	return error
})


// 添加响应拦截器
$http.interceptors.response.use(response => {
	// 对响应数据做点什么
	const data = response.data;
	const retCode = response.data.retCode
	if (retCode == 'SUCCESS') {
		return data
	} else if (retCode == 'SESSIONTIMEOUT') {
		Message.warning('会话已过期,请重新登录!');
		localStorage.removeItem('token')
		setTimeout(function() {
			router.push('/login');
		}, 800)
	} else {
		Message.error(data.retMsg);
	}
}, error => {
	return error;
})

$http.interceptors.response.use

// 发送真正的网络请求
export default $http
